\section{ec\+\_\+fsm\+\_\+slave Struct Reference}
\label{structec__fsm__slave}\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}


Finite state machine of an Ether\+C\+AT slave.  


\subsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
\mbox{\label{structec__fsm__slave_aa94f51d82b6c14baa831f68999fbc6a7}} 
\textbf{ ec\+\_\+slave\+\_\+t} $\ast$ \textbf{ slave}
\begin{DoxyCompactList}\small\item\em slave the F\+SM runs on \end{DoxyCompactList}\item 
struct list\+\_\+head \textbf{ list}
\begin{DoxyCompactList}\small\item\em Used for execution list. \end{DoxyCompactList}\item 
void($\ast$ \textbf{ state} )(\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+t} $\ast$, \textbf{ ec\+\_\+datagram\+\_\+t} $\ast$)
\begin{DoxyCompactList}\small\item\em State function. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+datagram\+\_\+t} $\ast$ \textbf{ datagram}
\begin{DoxyCompactList}\small\item\em Previous state datagram. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$ \textbf{ sdo\+\_\+request}
\begin{DoxyCompactList}\small\item\em S\+DO request to process. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+reg\+\_\+request\+\_\+t} $\ast$ \textbf{ reg\+\_\+request}
\begin{DoxyCompactList}\small\item\em Register request to process. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+foe\+\_\+request\+\_\+t} $\ast$ \textbf{ foe\+\_\+request}
\begin{DoxyCompactList}\small\item\em FoE request to process. \end{DoxyCompactList}\item 
off\+\_\+t \textbf{ foe\+\_\+index}
\begin{DoxyCompactList}\small\item\em Index to FoE write request data. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+soe\+\_\+request\+\_\+t} $\ast$ \textbf{ soe\+\_\+request}
\begin{DoxyCompactList}\small\item\em SoE request to process. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} \textbf{ fsm\+\_\+coe}
\begin{DoxyCompactList}\small\item\em CoE state machine. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+fsm\+\_\+foe\+\_\+t} \textbf{ fsm\+\_\+foe}
\begin{DoxyCompactList}\small\item\em FoE state machine. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+fsm\+\_\+soe\+\_\+t} \textbf{ fsm\+\_\+soe}
\begin{DoxyCompactList}\small\item\em SoE state machine. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Finite state machine of an Ether\+C\+AT slave. 

Definition at line 54 of file fsm\+\_\+slave.\+h.



\subsection{Field Documentation}
\mbox{\label{structec__fsm__slave_ae393c328b5fe12f06f19f05fe140a643}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!list@{list}}
\index{list@{list}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{list}
{\footnotesize\ttfamily struct list\+\_\+head ec\+\_\+fsm\+\_\+slave\+::list}



Used for execution list. 



Definition at line 56 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_a1ee8a297949fadd3991b4b7aff8b7c2a}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!state@{state}}
\index{state@{state}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{state}
{\footnotesize\ttfamily void($\ast$ ec\+\_\+fsm\+\_\+slave\+::state) (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+t} $\ast$, \textbf{ ec\+\_\+datagram\+\_\+t} $\ast$)}



State function. 



Definition at line 58 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_a180a65aa95ddc2f8260c8d59a9ca9251}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!datagram@{datagram}}
\index{datagram@{datagram}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{datagram}
{\footnotesize\ttfamily \textbf{ ec\+\_\+datagram\+\_\+t}$\ast$ ec\+\_\+fsm\+\_\+slave\+::datagram}



Previous state datagram. 



Definition at line 59 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_a5f8b15e16a43555f5bc984380096d129}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!sdo\+\_\+request@{sdo\+\_\+request}}
\index{sdo\+\_\+request@{sdo\+\_\+request}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{sdo\+\_\+request}
{\footnotesize\ttfamily \textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t}$\ast$ ec\+\_\+fsm\+\_\+slave\+::sdo\+\_\+request}



S\+DO request to process. 



Definition at line 60 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_a337fc81f36562866d9cdc92e78ef4fdc}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!reg\+\_\+request@{reg\+\_\+request}}
\index{reg\+\_\+request@{reg\+\_\+request}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{reg\+\_\+request}
{\footnotesize\ttfamily \textbf{ ec\+\_\+reg\+\_\+request\+\_\+t}$\ast$ ec\+\_\+fsm\+\_\+slave\+::reg\+\_\+request}



Register request to process. 



Definition at line 61 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_a3fa15bb678542863b36f3e79081df19a}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!foe\+\_\+request@{foe\+\_\+request}}
\index{foe\+\_\+request@{foe\+\_\+request}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{foe\+\_\+request}
{\footnotesize\ttfamily \textbf{ ec\+\_\+foe\+\_\+request\+\_\+t}$\ast$ ec\+\_\+fsm\+\_\+slave\+::foe\+\_\+request}



FoE request to process. 



Definition at line 62 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_aad54bfb331ddd0f5de61d24b415b03fe}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!foe\+\_\+index@{foe\+\_\+index}}
\index{foe\+\_\+index@{foe\+\_\+index}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{foe\+\_\+index}
{\footnotesize\ttfamily off\+\_\+t ec\+\_\+fsm\+\_\+slave\+::foe\+\_\+index}



Index to FoE write request data. 



Definition at line 63 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_a927d20b1685eea5160c96ca9f8748d12}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!soe\+\_\+request@{soe\+\_\+request}}
\index{soe\+\_\+request@{soe\+\_\+request}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{soe\+\_\+request}
{\footnotesize\ttfamily \textbf{ ec\+\_\+soe\+\_\+request\+\_\+t}$\ast$ ec\+\_\+fsm\+\_\+slave\+::soe\+\_\+request}



SoE request to process. 



Definition at line 64 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_ac9f6c23ca16927be8dab824caf95878f}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!fsm\+\_\+coe@{fsm\+\_\+coe}}
\index{fsm\+\_\+coe@{fsm\+\_\+coe}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{fsm\+\_\+coe}
{\footnotesize\ttfamily \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} ec\+\_\+fsm\+\_\+slave\+::fsm\+\_\+coe}



CoE state machine. 



Definition at line 66 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_ac4d096c83edc90e10998d0581ac2b90e}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!fsm\+\_\+foe@{fsm\+\_\+foe}}
\index{fsm\+\_\+foe@{fsm\+\_\+foe}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{fsm\+\_\+foe}
{\footnotesize\ttfamily \textbf{ ec\+\_\+fsm\+\_\+foe\+\_\+t} ec\+\_\+fsm\+\_\+slave\+::fsm\+\_\+foe}



FoE state machine. 



Definition at line 67 of file fsm\+\_\+slave.\+h.

\mbox{\label{structec__fsm__slave_a631509da2c5d1a4ac23eecf89afea74e}} 
\index{ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}!fsm\+\_\+soe@{fsm\+\_\+soe}}
\index{fsm\+\_\+soe@{fsm\+\_\+soe}!ec\+\_\+fsm\+\_\+slave@{ec\+\_\+fsm\+\_\+slave}}
\subsubsection{fsm\+\_\+soe}
{\footnotesize\ttfamily \textbf{ ec\+\_\+fsm\+\_\+soe\+\_\+t} ec\+\_\+fsm\+\_\+slave\+::fsm\+\_\+soe}



SoE state machine. 



Definition at line 68 of file fsm\+\_\+slave.\+h.

